export function genImgUrl(url: string, w: number, h?: number) {
  if (!h) {
    h = w
  }
  url += `?param=${w}y${h}`
  return url
}
// export function throttle(
//   func: { apply: (arg0: any, arg1: IArguments) => void },
//   delay: number | undefined,
// ) {
//   var timer: NodeJS.Timeout | null = null
//   return function () {
//     var context = this
//     var args = arguments
//     if (!timer) {
//       timer = setTimeout(function () {
//         func.apply(context, args)
//         timer = null
//       }, delay)
//     }
//   }
// }
// export function throttle(func: Function, delay: number) {
//   var timer: any = null
//   var startTime = Date.now()
//   return function () {
//     var curTime = Date.now()
//     var remaining = delay - (curTime - startTime)
//     var context = this
//     var args = arguments
//     clearTimeout(timer)
//     if (remaining <= 0) {
//       func.apply(context, args)
//       startTime = Date.now()
//     } else {
//       timer = setTimeout(func, remaining)
//     }
//   }
// }

export function isUndef(v: any) {
  return v === undefined || v === null
}

export function isDef(v: any) {
  return v !== undefined && v !== null
}

export function isTrue(v: any) {
  return v === true
}

export function isFalse(v: any) {
  return v === false
}

export function getPageOffset(page: number, limit: number) {
  return (page - 1) * limit
}
